package com.local.service.face;

import java.util.List;

import com.local.model.EquipmentToMedie;
import com.local.model.LocalEquipment;
import com.local.model.LocalEquipmentExample;
import com.local.page.LocalEquipmentPage;
import com.qianhai.common.exception.BaseException;
import com.qianhai.common.service.face.BaseService;

public interface LocalEquipmentService extends
		BaseService<LocalEquipmentExample, LocalEquipment, String>
{
	
	List<LocalEquipment> queryDeviceByPage(
			LocalEquipmentPage<LocalEquipment> page);
	
	int registerEquipment(LocalEquipment equipment);
	
	
	public LocalEquipment findUniqueEquipment(String equipmentUuid);
	
	
	public LocalEquipment findUniqueEquipmentByCameraNo(String cameraNo);
	
	
	/**
	 * 
	 * 方法描述：   批量删除设备列表
	 * @Title: deleteBatchById 
	 * @param @param ids
	 * @param @return
	 * @param @throws BaseException
	 * @return Integer
	 * @user lyf
	 * 2015年10月26日
	 * @throws
	 */
	public Integer deleteBatchById(List<String> ids) throws BaseException;
	
	
	/**
	 * 
	 * 方法描述：  修改媒体信息
	 * @Title: modifyMedieInfo 
	 * @param @param medieMapInfo
	 * @param @return
	 * @param @throws BaseException
	 * @return Integer
	 * @user lyf
	 * 2015年10月27日
	 * @throws
	 */
	public Integer modifyMedieInfo(EquipmentToMedie medieMapInfo) throws BaseException;
	
	/**
	 * 
	 * 方法描述：  通过设备ID获取媒体配置信息
	 * @Title: getMedieInfoByEquimentId 
	 * @param @param equmentId
	 * @param @return
	 * @return EquipmentToMedie
	 * @user lyf
	 * 2015年10月27日
	 * @throws
	 */
	public EquipmentToMedie getMedieInfoByEquimentId(String equmentId);
	
	/**
	 * 
	 * 方法描述：  连接相机,如果已经连接着删除后在连接
	 * @Title: connectionMedie 
	 * @param @param ids
	 * @param @return
	 * @param @throws BaseException
	 * @return Integer
	 * @user lyf
	 * 2015年10月27日
	 * @throws
	 */
	public Integer connectionMedie(List<String> equimentIds) throws BaseException;
	
	/**
	 * 
	 * 方法描述： 断开连接
	 * @Title: disconnectMedie 
	 * @param @param equimentIds
	 * @param @return
	 * @param @throws BaseException
	 * @return Integer
	 * @user lyf
	 * 2015年10月27日
	 * @throws
	 */
	public Integer disconnectMedie(List<String> equimentIds) throws BaseException;

	/**
	 * 
	 * 方法描述：切换相机出入口
	 * @Title: modifyEquiment 
	 * @param @param id
	 * @return void
	 * @user pichunhan
	 * 2016年5月9日
	 * @throws
	 */
	public void modifyEquiment(String id);
}
